﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ComunesMGI.Constantes;

namespace ComunesMGI.DataTypes
{
    [Serializable]
    public class DataUsuario
    {
        private string _nombre;
        private int _codigo;
        private DateTime _fechaSincronizacion;

        public DateTime FechaSincronizacion
        {
            get { return _fechaSincronizacion; }
            set { _fechaSincronizacion = value; }
        }

        public int Codigo
        {
            get { return _codigo; }
            set { _codigo = value; }
        }

        public string Nombre
        {
            get { return _nombre; }
            set { _nombre = value; }
        }

        public DataUsuario(string nombre)
        {
            this._nombre = nombre;
            this._codigo = 0;
            this._fechaSincronizacion = ConstantesMGI.FechaVacia;
        }


        public DataUsuario(string nombre, int codigo)
        {
            this._nombre = nombre;
            this._codigo = codigo;
            this._fechaSincronizacion = ConstantesMGI.FechaVacia;
        }

        public DataUsuario(string nombre, int codigo, DateTime fechaSincronizacion)
        {
            this._nombre = nombre;
            this._codigo = codigo;
            this._fechaSincronizacion = fechaSincronizacion;
        }

        public override bool Equals(Object obj)
        {
            DataUsuario usuario = (DataUsuario)obj;
            return ((this.Nombre == usuario.Nombre)&&(this.Codigo == usuario.Codigo)&&(this._fechaSincronizacion.Equals(usuario.FechaSincronizacion)));

        }
    }
}
